웹개발 및 최신 테크 소식을 전하는 블로그, 웹이즈프리

HOME > php

[PHP] 현재 페이지에서 다른 페이지로 이동하는 방법, 301 리디렉션(리다이렉트)

Last Modified : 2020-07-11 / Created : 2014-08-07
6,525
View Count
PHP 환경의 웹서버에서 다른 페이지로 이동하기 위한 방법을 알아봅니다.



! PHP에서 다른 페이지 전환, 이동하기, 301 이동 방법


서버에서 이동하는 하는 방법을 301 리디렉션(redirection) 이동 방법이라 부릅니다. 다른 페이지로 이동할 때 클라이언트에서 이동하는 방법과 서버에서 이동하는 두 가지가 존재하죠.

참고로 301 & 302의 방법에 대하여 좀 더 알아보시려면 아래를 클릭하세요.

링크 바로가기 >
https://webisfree.com/2014-09-03/301-302-리디렉션(리다이렉트)-차이점-및-사용방법

먼저 방법부터 알아봅니다. 아래 코드를 봐주세요.
<?php
  header ('location: http://webisfree.com/contact/');
  // webisfree.com/contact으로 페이지 전환
?>

여기서 페이지를 이동하기 위해 header() 명령어를 사용하였습니다.

header(이동할 주소)


php에서 다른 페이지로 이동하기 위해서 이처럼 header()를 사용해 간단하게 다른 페이지로 전환할 수 있죠.

@ 301 이동시 주의할 점은?
이때 중요한 부분은 페이지에 로딩되기 이 전에 이동해야 하므로 위의 header() 코드가 반드시 페이지 최상단에 있어야 한다는 점입니다. 그렇지 않으면 301 방식의 이동은 되지 않습니다.


@ 301, 302의 간단한 차이점 알아보기
페이지를 이동하는 방법은 두 가지가 있습니다. 서버 사이드의 301 방법과 자바스크립트를 이용한 302 방법입니다. 301 방법은 어떠한 내용도 접속자에게 전송하지 않고 바로 페이지를 전환시키므로 방문자에게 강제하는 동작 등을 하지 않습니다. 설명하기는 어렵지만 어쨌든 SEO 측면에 영향을 미치고 즉 검색엔진 최적화를 위해서는 302 방법을 사용하는 것이 좋습니다.

어떤 경우에 301 페이지 이동이 필요할까요? 대표적인 예가 바로 새로운 주소로 사이트를 이전시키는 경우입니다. 만약 A라는 사이트를 폐쇄 후 새로운 B로 주소가 바뀌었다면 A에 접속시 B로 이동시킬 때는 SEO를 고려하여 301 방법을 사용해야하죠.


! 정리하기

마지막으로 정리하면? php에서 301 이동은 header()를 사용합니다. 이때 위에 언급했듯이 서버사이드 페이지 이동을 하기 위해서는 접속자에게 아무것도 전송하지 말아야 하므로 반드시 페지이 최상단에 header() 명령어를 위치해야만 페이지 이동이 가능하고 이를 어기는 경우 오류가 발생하니 꼭 알아두세요!

Previous

[PHP] 현재 페이지 url주소, 파라미터, 쿼리스트링등의 값 확인하는 방법

Previous

APMSETUP 설치 후 phpmyadmin 접속이 안되는 경우